package br.com.divulgaqui.persistence.daoimpl;

import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.Query;

import br.com.divulgaqui.entity.PessoaJuridica;
import br.com.divulgaqui.persistence.dao.JPAGenericDAO;
import br.com.divulgaqui.persistence.dao.PessoaJuridicaDAO;

public class PessoaJuridicaDAOImpl extends JPAGenericDAO<PessoaJuridica> implements
		PessoaJuridicaDAO {

	public PessoaJuridicaDAOImpl(EntityManager entityManager) {
		super(entityManager);		
	}


	@Override
	public PessoaJuridica getPessoaJuridicaByCNPJ(String cnpj) {
		PessoaJuridica pessoaJuridica = null;
		Query query = this.getEntityManager().createQuery("from PessoaJuridica pj where pj.cnpj = :cnpj");
		query.setParameter("cnpj", cnpj);
		try {
			pessoaJuridica = (PessoaJuridica) query.getSingleResult();
		} catch (NoResultException e) {//não encontrou nada na pesquisa
			return null;
		}		
		return pessoaJuridica;
	}

}
